broadway: get the core pointer from the device manager
authorPaolo Borelli <pborelli@gnome.org>
Sun, 28 Feb 2016 14:06:53 +0000 (15:06 +0100)
committerPaolo Borelli <pborelli@gnome.org>
Mon, 29 Feb 2016 13:15:04 +0000 (14:15 +0100)
https://bugzilla.gnome.org/show_bug.cgi?id=762820

gdk/broadway/gdkdisplay-broadway.c
gdk/broadway/gdkeventsource.c

index f3522208cba3ba822787bc9efe3922c9f5f46ae6..dd605d888fe7cfe636f23846fcbe3f8766228ea3 100644 (file)
@@ -96,28 +96,11 @@ gdk_broadway_display_init_input (GdkDisplay *display)
 
   g_list_free (list);
 
-  /* Now set "core" pointer to the first
-   * master device that is a pointer.
-   */
-  list = gdk_device_manager_list_devices (device_manager, GDK_DEVICE_TYPE_MASTER);
-
-  for (l = list; l; l = l->next)
-    {
-      device = l->data;
-
-      if (gdk_device_get_source (device) != GDK_SOURCE_MOUSE)
-        continue;
-
-      display->core_pointer = device;
-      break;
-    }
-  G_GNUC_END_IGNORE_DEPRECATIONS;
-
   /* Add the core pointer to the devices list */
+  display->core_pointer = GDK_BROADWAY_DEVICE_MANAGER (device_manager)->core_pointer;
   broadway_display->input_devices = g_list_prepend (broadway_display->input_devices,
-                                               g_object_ref (display->core_pointer));
-
-  g_list_free (list);
+                                                    g_object_ref (display->core_pointer));
+  G_GNUC_END_IGNORE_DEPRECATIONS;
 }
 
 GdkDisplay *
index 14b70ee3b3d24195cbc14fda00f5e4c48dc5b46c..ae5b41e9792163a5632ad09aa43225d630044fd4 100644 (file)
@@ -136,8 +136,8 @@ _gdk_broadway_events_got_input (BroadwayInputMsg *message)
        event->crossing.state = message->pointer.state;
        event->crossing.mode = message->crossing.mode;
        event->crossing.detail = GDK_NOTIFY_ANCESTOR;
-       gdk_event_set_device (event, display->core_pointer);
-       gdk_event_set_seat (event, gdk_device_get_seat (display->core_pointer));
+       gdk_event_set_device (event, device_manager->core_pointer);
+       gdk_event_set_seat (event, gdk_device_get_seat (device_manager->core_pointer));
 
        node = _gdk_event_queue_append (display, event);
        _gdk_windowing_got_event (display, node, event, message->base.serial);
@@ -157,8 +157,8 @@ _gdk_broadway_events_got_input (BroadwayInputMsg *message)
        event->crossing.state = message->pointer.state;
        event->crossing.mode = message->crossing.mode;
        event->crossing.detail = GDK_NOTIFY_ANCESTOR;
-       gdk_event_set_device (event, display->core_pointer);
-       gdk_event_set_seat (event, gdk_device_get_seat (display->core_pointer));
+       gdk_event_set_device (event, device_manager->core_pointer);
+       gdk_event_set_seat (event, gdk_device_get_seat (device_manager->core_pointer));
 
        node = _gdk_event_queue_append (display, event);
        _gdk_windowing_got_event (display, node, event, message->base.serial);
@@ -179,8 +179,8 @@ _gdk_broadway_events_got_input (BroadwayInputMsg *message)
        event->motion.x_root = message->pointer.root_x;
        event->motion.y_root = message->pointer.root_y;
        event->motion.state = message->pointer.state;
-       gdk_event_set_device (event, display->core_pointer);
-       gdk_event_set_seat (event, gdk_device_get_seat (display->core_pointer));
+       gdk_event_set_device (event, device_manager->core_pointer);
+       gdk_event_set_seat (event, gdk_device_get_seat (device_manager->core_pointer));
 
        node = _gdk_event_queue_append (display, event);
        _gdk_windowing_got_event (display, node, event, message->base.serial);
@@ -205,8 +205,8 @@ _gdk_broadway_events_got_input (BroadwayInputMsg *message)
        event->button.y_root = message->pointer.root_y;
        event->button.button = message->button.button;
        event->button.state = message->pointer.state;
-       gdk_event_set_device (event, display->core_pointer);
-       gdk_event_set_seat (event, gdk_device_get_seat (display->core_pointer));
+       gdk_event_set_device (event, device_manager->core_pointer);
+       gdk_event_set_seat (event, gdk_device_get_seat (device_manager->core_pointer));
 
        node = _gdk_event_queue_append (display, event);
        _gdk_windowing_got_event (display, node, event, message->base.serial);
@@ -225,8 +225,8 @@ _gdk_broadway_events_got_input (BroadwayInputMsg *message)
        event->scroll.x_root = message->pointer.root_x;
        event->scroll.y_root = message->pointer.root_y;
        event->scroll.direction = message->scroll.dir == 0 ? GDK_SCROLL_UP : GDK_SCROLL_DOWN;
-       gdk_event_set_device (event, display->core_pointer);
-       gdk_event_set_seat (event, gdk_device_get_seat (display->core_pointer));
+       gdk_event_set_device (event, device_manager->core_pointer);
+       gdk_event_set_seat (event, gdk_device_get_seat (device_manager->core_pointer));
 
        node = _gdk_event_queue_append (display, event);
        _gdk_windowing_got_event (display, node, event, message->base.serial);
@@ -270,7 +270,7 @@ _gdk_broadway_events_got_input (BroadwayInputMsg *message)
 
        gdk_event_set_device (event, device_manager->core_pointer);
        gdk_event_set_source_device (event, device_manager->touchscreen);
-       gdk_event_set_seat (event, gdk_device_get_seat (display->core_pointer));
+       gdk_event_set_seat (event, gdk_device_get_seat (device_manager->core_pointer));
 
         if (message->touch.is_emulated)
           _gdk_event_set_pointer_emulated (event, TRUE);
@@ -306,7 +306,7 @@ _gdk_broadway_events_got_input (BroadwayInputMsg *message)
     break;
   case BROADWAY_EVENT_GRAB_NOTIFY:
   case BROADWAY_EVENT_UNGRAB_NOTIFY:
-    _gdk_display_device_grab_update (display, display->core_pointer, display->core_pointer, message->base.serial);
+    _gdk_display_device_grab_update (display, device_manager->core_pointer, device_manager->core_pointer, message->base.serial);
     break;
 
   case BROADWAY_EVENT_CONFIGURE_NOTIFY:
@@ -365,8 +365,8 @@ _gdk_broadway_events_got_input (BroadwayInputMsg *message)
        event = gdk_event_new (GDK_FOCUS_CHANGE);
        event->focus_change.window = g_object_ref (window);
        event->focus_change.in = FALSE;
-       gdk_event_set_device (event, display->core_pointer);
-       gdk_event_set_seat (event, gdk_device_get_seat (display->core_pointer));
+       gdk_event_set_device (event, device_manager->core_pointer);
+       gdk_event_set_seat (event, gdk_device_get_seat (device_manager->core_pointer));
        node = _gdk_event_queue_append (display, event);
        _gdk_windowing_got_event (display, node, event, message->base.serial);
       }
@@ -376,8 +376,8 @@ _gdk_broadway_events_got_input (BroadwayInputMsg *message)
        event = gdk_event_new (GDK_FOCUS_CHANGE);
        event->focus_change.window = g_object_ref (window);
        event->focus_change.in = TRUE;
-       gdk_event_set_device (event, display->core_pointer);
-       gdk_event_set_seat (event, gdk_device_get_seat (display->core_pointer));
+       gdk_event_set_device (event, device_manager->core_pointer);
+       gdk_event_set_seat (event, gdk_device_get_seat (device_manager->core_pointer));
        node = _gdk_event_queue_append (display, event);
        _gdk_windowing_got_event (display, node, event, message->base.serial);
       }